package edu.pitt.dbmi.odie.gapp.gwt.client;

import com.smartgwt.client.types.Alignment;
import com.smartgwt.client.widgets.layout.HLayout;
import com.smartgwt.client.widgets.layout.VLayout;
import com.smartgwt.client.widgets.Label;

public class ODIE_LayoutExample {

	HLayout widget = null ;
	
	public ODIE_LayoutExample() {

		widget = new HLayout();
		widget.setWidth100();
		widget.setHeight100();
		widget.setMembersMargin(20);

		VLayout vLayout = new VLayout();
		vLayout.setShowEdges(true);
		vLayout.setWidth(150);
		vLayout.setMembersMargin(5);
		vLayout.setLayoutMargin(10);
		vLayout.addMember(new BlueBox(null, 50, "height 50"));
		vLayout.addMember(new BlueBox((String) null, "*", "height *"));
		vLayout.addMember(new BlueBox((String) null, "30%", "height 30%"));
		widget.addMember(vLayout);

		HLayout hLayout = new HLayout();
		hLayout.setShowEdges(true);
		hLayout.setHeight(150);
		hLayout.setMembersMargin(5);
		hLayout.setLayoutMargin(10);
		hLayout.addMember(new BlueBox(50, (Integer) null, "width 50"));
		hLayout.addMember(new BlueBox("*", null, "width *"));
		hLayout.addMember(new BlueBox("30%", null, "width 30%"));
		widget.addMember(hLayout);

		widget.draw();
	}

	class BlueBox extends Label {

		public BlueBox(String contents) {
			setAlign(Alignment.CENTER);
			setBorder("1px solid #808080");
			setBackgroundColor("lightblue");
			setContents(contents);
		}

		public BlueBox(Integer width, Integer height, String contents) {
			this(contents);
			if (width != null)
				setWidth(width);
			if (height != null)
				setHeight(height);
		}

		public BlueBox(Integer width, String height, String contents) {
			this(contents);
			if (width != null)
				setWidth(width);
			if (height != null)
				setHeight(height);
		}

		public BlueBox(String width, String height, String contents) {
			this(contents);
			if (width != null)
				setWidth(width);
			if (height != null)
				setHeight(height);
		}
	}
}